package br.org.ifrr.converter;

import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.faces.convert.FacesConverter;

import br.org.ifrr.model.GrupoUsuario;
import br.org.ifrr.repository.GrupoUsuarios;
import br.org.ifrr.util.cdi.CDIServiceLocator;

@FacesConverter(forClass = GrupoUsuario.class)
public class GrupoUsuarioConverter implements Converter {

	// @Inject
	private GrupoUsuarios grupoUsuarios;

	public GrupoUsuarioConverter() {
		grupoUsuarios = CDIServiceLocator.getBean(GrupoUsuarios.class);
	}

	@Override
	public Object getAsObject(FacesContext context, UIComponent componente,
			String value) {
		GrupoUsuario retorno = null;

		if (value != null) {
			Long id = new Long(value);
			retorno = grupoUsuarios.porId(id);
		}
		return retorno;
	}

	@Override
	public String getAsString(FacesContext context, UIComponent component, Object value) {

		if (value != null) {
			GrupoUsuario grupo = (GrupoUsuario) value;
			return grupo.getId() == null ? null : grupo.getId().toString();
		}
		return "";
	}
}
